A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyrights whatsoever.
The present invention relates to email systems. More particularly, the present invention relates to email systems capable of comprehend and utilize a plurality of character sets. More particularly still, the present invention teaches an email system which possesses the agility to attempt to automatically decode the character set of the message, based on a users preferred order.
The Internet is an international environment, and Internet email should be adaptable to this fact. It is well known that the many languages in use around the world utilize a number of different alphabets, or scripts, to convey meaning. Moreover, there have arisen several standards, or encoding schemes, by which the character sets required to implement the world""s languages are rendered computer-storable, computer-processable, and computer-readable. These facts, in sum, have rendered the polyglot languages of the world mutually unintelligible.
In the simple situation where a users sends an English-based email message to a second user whose machine is also configured to communicate with that second user in the English language, there is no guarantee that the first and second user""s computers process English language based information in the same manner. By way of example, but not limitation, the first users computer might utilize ASCII to store, represent, or process a text message while the second users computer might utilize one of the Unicode standards. In order to alleviate this difficulty, the well known MIME extensions provide information, in the header of the MIME-based message, which information is required by the second user""s computer to properly identified the character set required to present the text.
MIME (Multipurpose Internet Mail Extension) extends the format of Internet email to enable non-U.S.-ASCII textual messages, non-textual messages, multiparty message bodies, and non-U.S.-ASCII information in message headers. MIME allows the knowledgeable user to specify character sets (CHARSETS). There are certain character sets that are good for storing and others which are good for processing. There are others that are storage intensive and others that are processor intensive. Accordingly, there are many situations where it is necessary, or at least advantageous to convert between one CHARSET and another. If a given operating system has converters to convert data from one character set to another, the operating system can enable the conversion from one CHARSET to another.
Any two users whose systems have previously agreed on the language, and character set required to represent that language, experience little difficulty in communicating with one another. One problem arises when the user receives email messages from a plurality of other users, and this plurality of users utilize a number of different languages, or character sets to represent those languages.
Mozilla is one well-known methodology for trying a number of character sets on an incoming email message. Mozilla is seriously limited however, in that as opposed to providing an automated methodology to enable a plurality of character sets to be implemented simultaneously, it simply replaces the default character set on a user""s browser, or email software with an alternative character set.
What is needed therefore is the methodology that will allow an email sender to create a message in substantially any desired character set or character sets. The methodology should further enable email software to automatically display a message utilizing the proper character set or character sets. This methodology should enable email software to automatically include in the email message sufficient information to meet the previously defined needs utilizing standard MIME conventions.
Simply put, email clients need automated code conversions between MIME and the code set of the current locale in order to exhibit truly global behavior. Code conversions should be platform-independent. Moreover, all plans residing on the platform including but not limited to email and browser applications should be able to transparently utilize the resulting interfaces to support global/international text.
The present invention teaches a methodology that allows an email sender to view and/or send a message in substantially any desired character set. The methodology also enables email software to automatically display a message utilizing the proper character set or sets. This methodology further enables email software to automatically include in the email message sufficient information to meet the previously defined needs utilizing standard MIME conventions.
According to one aspect of the present invention there is provided a flexible flat file syntax that holds per-locale information about email, based on MIME conventions. The information in the file is used to build a database which may be used by email clients through a new Application Programming Interface (API). The contents of this file can also be configured by users to fit their individual and specific email needs.
According to another aspect of the present invention this, to same flat file also allows a knowledgeable user to provide a specification entitled xe2x80x9cCHARSET-specificationxe2x80x9d which describes the appropriate code-converter to be used to convert the body of the message from one CHARSET to another any receiver""s system.
In order to accomplish the features and advantages made available herewith, the present invention enables the creation of a set of APIs, which allow abstraction of locale-dependent properties of a message which can then be used by clients. By way of example, but not limitation, one such client is dtmail, available from Sun(trademark) Microsystems, Palo Alto Calif.
The present invention implements a locale conversion library definition file, or LCL_DEF. LCL_DEF contains information to many email and MIME-specific attributes on a per-locale or a per-user basis. This information is then utilized by the LCL library to tailor the email handling behavior of the email client. The library itself obtains various kinds of information required to hide of locale-based details of a given message through a flexible text file format which can be edited by clients for client-specific email handling.
LCL_DEF is provided in a plain ASCII text format, so that a user can modify its contents easily. Accordingly LCL_DEF enables the user to customize the behavior of conversions performed by LCL library without changing the library itself.